a=list(map(int,input().rstrip().split()))
s=a[0]
n=a[1]
lst=[]
for i in range(n):
b=list(map(int,input().rstrip().split()))
lst.append(b)
lst.sort()
f=0
for j in lst:
if s>j[0]:
s+=j[1]
f+=1
if f==len(lst):
print("YES")
else:
print("NO")
#include<bits/stdc++.h>
using namespace std;
int main()
{
int s,n,count=0;
cin>>s>>n;
pair <int,int > val[10000];
for (int i =0;i<n;i++)
{
cin>>val[i].first>>val[i].second;
}
sort (val,val+n);
for (int i =0 ;i< n;i++)
{
if (s<=val[i].first)
{
count++;
break;
}
else
{
s=s+val[i].second;
}
}
if (count > 0 )
{
cout<<"NO"<<endl;
}
else
{
cout<<"YES"<<endl;
}
}
712A - Memory and Crow | 1676C - Most Similar Words |
1681A - Game with Cards | 151C - Win or Freeze |
1585A - Life of a Flower | 1662A - Organizing SWERC |
466C - Number of Ways | 1146A - Love "A" |
1618D - Array and Operations | 1255A - Changing Volume |
1710C - XOR Triangle | 415C - Mashmokh and Numbers |
8A - Train and Peter | 591A - Wizards' Duel |
1703G - Good Key Bad Key | 1705A - Mark the Photographer |
1707A - Doremy's IQ | 1706B - Making Towers |
1325B - CopyCopyCopyCopyCopy | 1649C - Weird Sum |
1324B - Yet Another Palindrome Problem | 525A - Vitaliy and Pie |
879A - Borya's Diagnosis | 1672B - I love AAAB |
1673A - Subtle Substring Subtraction | 1345A - Puzzle Pieces |
711A - Bus to Udayland | 779B - Weird Rounding |
1703D - Double Strings | 1704C - Virus |